/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/
//								Manager Module
/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/

#ifndef MANAGER_MODULE
#define MANAGER_MODULE

#include <WinSock2.h>
#include <stdio.h>
#include "Types.h"

/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/
//								Functions
/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/
/*
 * MainManager
 * =========================
 * Function Description: This is the main function of the Iron Dome Manager. It will start the server, 
 *                       accept connections from the clients, and will then accept information from 
 *                       the simulator and batteries and perform required tasks. For more information on how the Manager
 *						 works, see the readme file.
 * Arguments: argc		The number of passed arguments. passed on from the "main" function.
 * 			  argv		The arguments, passed on from the "main" function. See specific list of arguments below. 
 * 
 * List of arguments the manager expects in argv:
 * 			- Mode Name					A string containing the name of the mode. "Manager" is expected in this case.
 * 			- Self IP					A string of the IP address of the manager. For example 127.0.0.1.
 * 			- Self Port					An integer representing the port number of the clock.
  *			- Clock IP					A string representing the IP address of the clock.
 *			- Clock port				An integer representing the clock's port number.
 * 			- Simulator IP				A string representing the IP address of the Real World Simulator.
 * 			- Simulator Port			An integer representing Real World Simulator Port number.
 * 			- Radar Accuracy			A double representing the manager's radar accuracy.
 * 			- Radar Position X			A double representing the radar's X position.
 * 			- Radar Position Y			A double representing the radar's Y position.
 * 			- Seed (optional) 			An unsigned optional integer that acts as a seed to the manager's random numbers engine.
 */
void MainManager(int argc, char *argv[]);

#endif
